package cn.t.request;

import lombok.Data;

import javax.validation.constraints.Digits;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * 新增商品入参
 */
@Data
public class CreateSkuReq {

    private Long id;

    /**
     * 启用:1/禁用:0
     */
    private Integer status;

    /**
     * 销售码
     */
    @NotBlank(message = "sku编号不能为空")
    private String skuCode;

    /**
     * 商品名称
     */
    @NotBlank(message = "商品名称不能为空")
    private String skuName;

    /**
     * 商品图片
     */
    @NotBlank(message = "商品图片不能为空")
    private String skuImg;

    /**
     * 商品类别主键id
     */
    @NotNull(message = "商品类别不能为空")
    private Integer categoryId;

    /**
     * 商品类别名称
     */
    @NotBlank(message = "商品类别不能为空")
    private String categoryName;


    /**
     * 商品尺寸(S、M、L)
     */
    @NotBlank(message = "商品尺寸不能为空")
    private String size;

    /**
     * 重量
     */
    @Digits(integer = 10, fraction = 2, message = "重量最多支持两位小数")
    private BigDecimal weight;

    /**
     * 计价单位含物理单位个数
     */
    @NotBlank(message = "商品规格不能为空")
    private String qty;

    /**
     * 计价单位
     */
    @NotBlank(message = "商品规格不能为空")
    private String chargeUnit;

    /**
     * 物理单位
     */
    @NotBlank(message = "商品规格不能为空")
    private String physicalUnit;

    /**
     * 商品描述
     */
    private String description;

    /**
     * 拆包商品对应的主商品
     */
    private String pSkuCode;

    /**
     * 商品重量误差值，这里不设置的话程序里默认使用5克
     */
    @NotNull(message = "商品重量误差值不能为空")
    private Integer errorRate;

}
